Nato a Busto Arsizio (Varese) nel 1940, si forma alla scuola d'arte drammatica del Piccolo Teatro di Milano, sotto la guida di Giorgio Strehler e Paolo Grassi.
A partire dagli anni Settanta comincia la collaborazione artistica con la Rai per la quale cura, come sceneggiatore e regista, inchieste e reportages sia in Italia che all'estero.
A questo periodo risale la sua attenzione ai problemi del mondo sportivo con la realizzazione per la rubrica TV7, insieme a Beppe Viola, dell'inchiesta Mercato di gambe su luci e ombre dell'ambiente calcistico.
Nel 1978 firma sceneggiatura e regia di due telefilm tratti dalla raccolta di racconti Centodelitti di Giorgio Scerbanenco.
Tra il 1987 e il 1990 scrive il soggetto originale della serie tv-movie Eurocops e ne dirige tre episodi interpretati da Diego Abatantuono nei panni del commissario Corso.
Nel 1995 è poi l'artefice di un grande successo in onda su RaiUno: Il grande Fausto, film ispirato alla vita di Fausto Coppi con Sergio Castellito, Ornella Muti, Bruno Ganz.
Contemporaneamente scrive e dirige sceneggiati per la radio, in particolare lo sceneggiato in ottanta puntate Rimorsi.
Ancora per la Rai dirige nel 1998 Una sola debole voce, messo in onda su Rai Due.
Nel 1999 altra regia importante, quella de Il commissario Montalbano.
Poi nel 2000 quella de Il furto del tesoro di San Pietro.
Nel 2001 torna a dirigere la terza serie della fiction su Montalbano, per Rai Due.